Resending control circuit, sending device, resending control method and resending control program

ABSTRACT

A resending control circuit for controlling resending of data to be sent to a sending destination, includes: a writing unit for writing resending information generated corresponding to each of data to be resent and including the resending point-in-time of the data in memory; a reading unit for reading out the resending information from the memory; and a control unit for comparing resending point-in-time included in the oldest resending information of resending information stored in the memory with current point-in-time, and executing resending processing of data corresponding to the resending information according to the comparison result.

CROSS REFERENCES TO RELATED APPLICATIONS

The present invention contains subject matter related to Japanese PatentApplication JP 2006-083359 filed in the Japanese Patent Office on Mar.24, 2006, the entire contents of which are incorporated herein byreference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a resending control circuit, aresending control method and a resending control program, wherebyresending of data to be sent to a sending destination is controlled.

2. Description of the Related Art

Commonly, under a wireless communication environment, a sending error orthe like occurs during sending of data to be sent (hereafter, referredto as “sending data”), and a situation wherein none of the data to besent reaches the reception side frequently occurs. Therefore, with acommunication device for performing wireless communication, for example,a resending function such as the communication device disclosed inJapanese Patent No. 3011159 (hereafter, a circuit for realizing thisfunction is referred to as “resending control circuit”) is provided, andaccessibility of sending data is secured. As for a communication deviceincluding this kind of resending function, for example, there is acommunication device disclosed in Japanese Patent No. 3011159. With thecommunication device disclosed in Japanese Patent No. 3011159, resendingpoint-in-time, a resending destination, and so forth corresponding tosending data that has already sent are stored in memory, a register, orthe like as resending information, and are managed, and resendingprocessing is executed based on this resending information.

Now, description will be made regarding resending processing that isexecuted by an existing resending control circuit with reference to FIG.10. First, a resending control circuit 200 illustrated in FIG. 10includes multiple registers 201 storing resending information (e.g.,made up of resending point-in-time, a resending destination, and soforth corresponding to sending data that has already sent) for eachresending destination (node), and multiple comparing units 202 forperforming comparing processing for each of the multiple registers 201.The resending control circuit 200 reads out all of the resendinginformation stored for each of the registers 201 with a predeterminedtime interval, compares the readout resending information with thecurrent point-in-time at the comparing units 202, and determinesregarding whether or not the current point-in-time has passed resendingpoint-in-time. Subsequently, in the event of determining that thecurrent point-in-time has passed the resending point-in-time, theresending control circuit 200 outputs a resending processing trigger topredetermined sending processing means. Subsequently, upon a resendingprocessing trigger being input, the sending processing means startresending processing.

Next, a resending control circuit 300 illustrated in FIG. 11 includesmemory 301 storing resending information for each region allocated foreach address Addr, a reading unit 302 reading out resendingpoint-in-time T×Time from the resending information stored in eachstorage region, and a comparing unit 303 performing comparisonprocessing for comparing the resending point-in-time T×Time read out bythe reading unit 302 with the current point-in-time. With the resendingcontrol circuit 300, the reading unit 302 reads out all of the resendinginformation stored in the memory 301 for each predetermined timeinterval, and the comparing unit 303 compares the readout resendinginformation with the current point-in-time, determines regarding whetheror not the current point-in-time has passed the resending information,and outputs a resending processing trigger.

Also, in response to an ACK signal from a sending destination receivedby receiving means included in the communication device, the resendingcontrol circuits 200 and 300 perform for deleting the resendinginformation that is unnecessary for resending from the registers 201 andmemory 301.

SUMMARY OF THE INVENTION

However, with the comparison processing illustrated in FIG. 10, it isnecessary to provide the number of comparing circuits equivalent to thenumber of registers, so as resending information to be managedincreases, the processing amount and circuit scale of the comparingcircuits increase. Also, with the comparison processing illustrated inFIG. 11, the reading unit reads out all of the resending informationstored in the memory within a predetermined time interval, the comparingcircuit compares the resending information with the currentpoint-in-time, so as the resending information to be managed increases,the processing amount performed within a predetermined time intervalincreases, and accordingly, it is necessary to increase processingspeed. Therefore, with an existing resending control circuit, as thenumber of resending information to be managed increases, power to beconsumed increases.

There has been found the need for a resending control circuit, a sendingdevice, a resending control method, and a resending control program,which perform management of resending information with low powerconsumption.

A resending control circuit according to an embodiment of the presentinvention is a resending control circuit for controlling resending ofdata to be sent to a sending destination, including: a writing unit forwriting resending information generated corresponding to each of data tobe resent and including the resending point-in-time of the data inmemory; a reading unit for reading out the resending information fromthe memory; and a control unit for comparing resending point-in-timeincluded in the oldest resending information of resending informationstored in the memory with current point-in-time, and executing resendingprocessing of data corresponding to the resending information accordingto the comparison result.

Also, a sending device according to an embodiment of the presentinvention is a sending device including a resending control circuit forcontrolling resending of data to be sent to a sending destination;wherein the resending control circuit includes: a writing unit forwriting resending information generated corresponding to each of data tobe resent and including the resending point-in-time of the data inmemory; a reading unit for reading out the resending information fromthe memory; and a control unit for comparing resending point-in-timeincluded in the oldest resending information of resending informationstored in the memory with current point-in-time, and executing resendingprocessing of data corresponding to the resending information accordingto the comparison result.

Also, a resending control method according to an embodiment of thepresent invention is a resending control method of a control circuit forcontrolling resending of data to be sent to a sending destination,including the steps of: writing resending information generatedcorresponding to each of data to be resent including the resendingpoint-in-time of the data in memory; comparing resending point-in-timeincluded in the oldest resending information of resending informationstored in the memory with current point-in-time; and executing resendingprocessing of data corresponding to the resending information accordingto the comparison result.

Also, a resending control program according to an embodiment of thepresent invention is a resending control program executed by a resendingcontrol circuit for controlling resending of data to be sent to asending destination, including the steps of: writing resendinginformation generated corresponding to each of data to be resentincluding the resending point-in-time of the data in memory; comparingresending point-in-time included in the oldest resending information ofresending information stored in the memory with current point-in-time;and executing resending processing of data corresponding to theresending information according to the comparison result.

Of the resending information stored in memory, the resendingpoint-in-time included in the oldest resending information is comparedwith the current point-in-time, the resending processing of datacorresponding to the resending information is executed according to thecomparison result, so even if the number of the resending information tobe managed varies, the resending information to be compared with thecurrent point-in-time for each predetermine time does not vary.

Accordingly, even if the number of the resending information to bemanaged increases, the processing amount of comparison processing forcomparing the resending point-in-time with the current point-in-time foreach predetermined time does not increase, whereby power consumption ofa control circuit for performing resending control can be prevented fromincreasing.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating the configuration of a sendingcontrol circuit;

FIG. 2 is a configuration diagram illustrating the configuration of aresending timer unit;

FIG. 3 is a flowchart illustrating the updating processing of a pointerby a writing unit;

FIG. 4A is a schematic diagram illustrating terminals serving as sendingdestinations, and FIG. 4B is a diagram illustrating resendingpoint-in-time corresponding to each of the terminals;

FIG. 5 is a schematic diagram illustrating writing and readingprocessing using a ring buffer;

FIG. 6 is a diagram illustrating resending point-in-time in the case ofcoupling and sending packets for each terminal;

FIG. 7 is a configuration diagram illustrating the configuration of aresending timer unit;

FIG. 8 is a flowchart illustrating a processing process for modifyingresending Node information according to an ACK signal;

FIG. 9 is a flowchart illustrating the processing process of a readingunit for reading the resending Node information modified according to anACK signal;

FIG. 10 is a diagram schematically illustrating an existing comparingcircuit; and

FIG. 11 is a diagram schematically illustrating an existing comparingcircuit.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Description will be made below in detail regarding specific embodimentsto which the present invention is applied, with reference to thedrawings.

First, description will be made regarding the configuration andoperations of a sending control circuit 100 included in a communicationdevice with reference to FIG. 1. The sending control circuit 100 is acontrol circuit for transmitting a sending signal to multiple sendingdestinations, and is made up of a new data input unit 101, a sendingdestination selecting unit 102, a sending buffer 103, a sending signalgenerating unit 104, and a resending timer 1.

The new data input unit 101 reads out sending Node information made upof a sending destination (sending node) and the number of packets andpacket size of the data thereof from the data input to the sendingcontrol circuit 100, supplies this to the sending destination selectingunit 102, and also supplies sending data to the sending buffer 103.Also, the new data input unit 101 supplies the sending Node informationand also a sending trigger to the sending destination selecting unit102.

Upon a sending trigger being supplied from the new data input unit 101,the sending destination selecting unit 102 selects a sending destinationbased on the sending Node information supplied from the new data inputunit 101, and supplies the sending Node information of the selectedsending destination and the sending trigger to the sending signalgenerating unit 104.

The sending buffer 103 stores the sending data supplied from the newdata input unit 101. Also, the sending buffer 103 supplies the sendingdata to the sending signal generating unit 104.

Upon the sending trigger being supplied from the sending destinationselecting unit 102, the sending signal generating unit 104 reads out thesending data from the sending buffer 103. Subsequently, the sendingsignal generating unit 104 generates a sending signal based on apredetermined communication standard from the sending data read out fromthe sending buffer 103, and sends this to the sending destinationcorresponding to the sending Node information. Further, the sendingsignal generating unit 104 generates resending Node information based onthe sending point-in-time and sending trigger to supply this to theresending timer 1. Here, the resending Node information is informationemployed for performing resending processing for resending the sendingsignal, and is made up of resending point-in-time and a resendingdestination.

Note that timing for generating the resending Node information isarbitrary, but with the present embodiment, description will be madebelow assuming that writing is performed at the timing wherein thesending processing by the sending signal generating unit 104 has beencompleted. However, “timing wherein the sending processing has beencompleted” means timing wherein the sending data is normally received atthe sending destination, and an ACK frame is replied from the sendingdestination, and consequently, means that timing wherein sending fromthe sending source to the sending destination has been completed. Also,the resending Node information is generated not only at the time offirst sending but also at the time of resending the same packet afterthis, and is supplied to the resending timer 1.

The resending timer 1, upon the resending point-in-time of the resendingNode information supplied from the sending signal generating unit 104passing the current point-in-time, supplies the resending trigger andthe resending Node information to the sending destination selecting unit102. Description will be made below in detail (first through thirdembodiments) focusing attention on the configuration and operations ofthe resending timer 1 serving as a resending management circuitaccording to the present embodiment.

First Embodiment

The resending timer 1, as illustrated in FIG. 2, is made up of a ringbuffer 11, a writing unit 12, a reading unit 13, a current point-in-timemeasuring unit 14, and a comparing unit 15.

The ring buffer 11 includes multiple storage regions allocated for eachaddress Addr, and is a storing medium capable of writing and readingsimultaneously. Specifically, the ring buffer 11, for example, isrealized by a storing medium including two access ports such as dualport RAM or the like. The ring buffer 11 is employed for controllingresending to a sending destination wherein sending processing has beencompleted by storing the resending Node information made up of a sendingnode and resending point-in-time T×Time for each of these storageregions. Note that regarding how addresses Addr are allocated to therespective storage regions on the ring buffer 11 is arbitrary, but withthe present embodiment, description will be made below assuming that theaddresses Addr from 0'th through 255'th are allocated to the respectivestorage regions, and also one piece of the resending Node information isstored in the storage regions corresponding to the respective addressesAddr.

The writing unit 12 writes the resending Node information supplied fromthe sending signal generating unit 104 in the storage regioncorresponding to the address Addr specified by a writing pointer.Subsequently, following writing processing of the resending Nodeinformation being completed, the writing unit 12 is arranged so as toincrement the address Addr specified by the writing pointer (in otherwords, one address to be written of the resending Node informationvaries). Consequently, in the event that the address specified by thewriting pointer varies, and subsequently sending processing iscompleted, the resending Node information corresponding to the relevantpacket is written in the storage region corresponding to the nextaddress Addr on the ring buffer 11.

The reading unit 13 reads out, of the resending Node information storedin the ring buffer 11, the resending Node information having the oldestwritten point-in-time. That is to say, the reading unit 13 reads out theresending destination Node and resending point-in-time T×Time from thestorage region of the address Addr specified by a readout pointer (thisaddress Addr is incremented at the reading timing of resending Nodeinformation as described later, and accordingly always specifies thestorage region corresponding to the oldest resending Node information).Subsequently, the reading unit 13 supplies the readout resendingdestination Node and resending point-in-time T×Time to the comparingunit 15.

The current point-in-time measuring unit 14 measures the currentpoint-in-time using a predetermined clock oscillator circuit, andsupplies the current point-in-time information to the comparing unit 15.

The comparing unit 15 compares the resending point-in-time T×Time of theresending Node information supplied from the reading unit 13 with thecurrent point-in-time measured by the current point-in-time measuringunit 14. Upon performing this comparison for each predetermined timeinterval (e.g., for each 9 μs), and determining that the currentpoint-in-time has passed the resending point-in-time, the comparing unit15 supplies the resending trigger and the resending Node information tothe sending destination selecting unit 102, and also causes the readingunit 13 to increment the address number specified by the readout pointerby one.

Thus, based on the resending Node information and so forth supplied fromthe comparing unit 15, a sending destination to be resent is selected atthe sending destination selecting unit 102, and the resending processingis performed as to the selected sending destination. Also, along withthe variation of the address Addr specified by the readout pointer, thereading address is changed to the subsequent address thereof, and theresending Node information to be read out is changed to that in thestorage region corresponding to the subsequent address Addr thereof.

On the other hand, following the resending processing, with the sendingsignal generating unit 104, the resending Node information correspondingto the sending destination to be resent is generated again, and issupplied to the writing unit 12, and is written in the ring buffer 11 bythe writing unit 12. Consequently, the packets resent are managed asresending objects, but the number of times of resending may berestricted from the perspective of utilization efficiency ofcommunication bands.

Now, there is a point to be kept in mind at the time of realizing theabove function. This is regarding which timing the resending Nodeinformation stored in the ring buffer 11 is eliminated at.

In the event that an arrangement is made wherein resending Nodeinformation is generated at the timing of completing the sendingprocessing as to the sending destination as described above, theresending Node information corresponding to all of the sendingdestinations whose sending being completed and the sending destinationswhose resending being completed is stored in the ring buffer 11.Consequently, under this configuration, even the resending Nodeinformation corresponding to the packet actually normally received atthe reception side continues to be stored in the ring buffer 11, andmanaged as a resending object. It is needless to say that even if such asituation is ignored, exceptionally no event which denies inventivenessoccurs, but from the perspective of the valid usage of transmissionbands and data management it is desirable to determine only the sendingdata whose sending has been failed as a resending object.

From such a perspective, the resending timer 1 according to the presentembodiment is arranged so as to execute processing for eliminatingresending Node information from the ring buffer 11 at the point ofreceiving the ACK signal sent from the reception side followingresending Node information being stored (the elimination processing inthis case is executed independently of the storing order as to the ringbuffer 11, and consequently, the ring buffer 11 is in a state of storingthe resending Node information in a scattered manner, for example).Also, in the event that a resending trigger is output from the comparingunit 15, and the resending processing of a packet is executed as well,the resending Node information is arranged so as to be eliminated fromthe ring buffer 11 (the elimination processing in this case is executedas to only the oldest resending Node information stored in the ringbuffer 11).

Note that the contents of the specific elimination processing arearbitrary, for example, an arrangement may be made wherein the resendingNode information is eliminated at the point of receiving the ACK signal,and the subsequent records of the information (i.e., the resending Nodeinformation stored in the ring buffer 11 temporally later than theresending Node information) are packed from the front. However, with thepresent embodiment, in order to clarify description, let us say that thevalue of the resending Node information corresponding to that ACK signalat the time of receiving an ACK signal is substituted with zero. In theevent that the value of the resending Node information is zero whenselecting a resending object, the processing corresponding to thatresending Node information is not performed, the processing based on thesubsequent resending Node information is continued, thereby effectivelypreventing the resending processing corresponding to the sending dataunnecessary for resending from execution. Note that description will bemade later regarding the specific processing contents at this time withreference to FIG. 3.

Next, description will be made in detail regarding processing formodifying the address Addr number specified by the writing pointer orreadout pointer with reference to FIG. 3. First, description will bemade regarding the modification processing of the writing pointer.

In step S1, the writing unit 12 determines regarding whether or not theaddress Addr number currently specified by the writing pointer is 255,and in the event of determining that the number thereof is not 255, theflow proceeds to step S2, and in the event of determining that thenumber thereof is 255, the flow proceeds to step S3.

In step S2, the writing unit 12 increments the address Addr numberspecified by the writing pointer, and ends the processing process.

In step S3, the writing pointer modifies the specified address Addrnumber to zero, and ends the processing process.

According to this processing process, the writing pointer specifies 255serving as the most significant address number of the ring buffer 11,following which is modified to zero serving as the least significantaddress number.

Also, with the readout pointer as well, the specified address Addrnumber is modified in accordance with the processing process illustratedin FIG. 3 as with the writing pointer.

Accordingly, the ring buffer 11 is arranged so as to write and readresending Node information cyclically by modifying the address Addrnumbers specified by the writing pointer and readout pointer mutuallycirculating in the same direction.

Next, description will be made in detail regarding the managementprocessing process of resending Node information at the resending timer1. With the initial stage, the writing pointer and readout pointerspecify the same address number mutually. Also, as described above, withthe writing pointer, the address Addr number specified therewith ismodified following writing of resending Node information in the ringbuffer 11 being completed, but with the readout pointer, the addressAddr number specified therewith is modified at the same time of aresending trigger being supplied to the sending destination selectingunit 102. That is to say, timing for modifying the specified addressAddr number differs between the writing pointer and readout pointer.Consequently, the address Addr specified by each of the pointersgradually varies following the present management processing beingstarted.

Upon resending Node information being supplied from the sending signalgenerating unit 104 to the resending timer 1, the writing unit 12 writesthe resending destination Node and resending point-in-time T×Time in thestorage region corresponding to the address Addr specified by thewriting pointer. Subsequently, the writing unit 12 modifies the addressAddr number specified by the writing pointer in accordance with theabove modification processing.

On the other hand, the reading unit 13 reads out the resendingdestination Node and resending point-in-time T×Time from the storageregion of the address specified by the readout pointer for eachpredetermined time interval to supply these to the comparing unit 15.

The comparing unit 15 compares the resending point-in-time T×Timesupplied from the reading unit 13 with the current point-in-timemeasured by the current point-in-time measuring unit 14, and in theevent of determining that the current point-in-time has passed thisresending point-in-time T×Time, supplies resending Node information tothe sending destination selecting unit 102, and also causes the readingunit 13 to modify the address Addr specified by the readout pointer inaccordance with the above modification processing.

Now, as a specific example, let us say that a sending signal issequentially sent to the four sending destinations (terminals A, B, C,and D) illustrated in FIG. 4A by the sending signal generating unit 104,and the resending timer 1 manages the four pieces of resending Nodeinformation illustrated in FIG. 4B. In this case, with the resendingtimer 1, the ring buffer 11 is configured so as to be written and readout cyclically by the writing pointer and readout pointer, so forexample, upon writing in the respective storage regions being performedin the sequence of (terminal A)→(terminal B)→(terminal C)→(terminal D)based on the resending point-in-time such as shown in FIG. 5,subsequently reading processing is performed in the same sequence.

Accordingly, with the comparing unit 15, the number of resending Nodeinformation to be compared with the current point-in-time for eachpredetermined time is always one, so even if the number of resendingNode information to be managed increases, the comparison processingamount to be performed for each predetermined time interval does notincrease in response thereto.

Particularly, in the event that the processing of the resending timer 1is realized with a dedicated circuit, it is necessary to increase thestorage capacity of the ring buffer 11 when the number of the resendingNode information to be managed increases, but the circuit scale of thehardware equivalent to the comparing unit 15 does not increase, so powerto be consumed within the circuit can be reduced as compared with theabove existing resending management circuit.

Second Embodiment

As illustrated in FIG. 6, there is a sending method for creating asending frame by coupling multiple packets to generate a sending signal.In the event that the sending control circuit 100 performs communicationusing such a sending method, the sending signal generating unit 14generates resending Node information made up of the number of resendingpackets and resending packet size that are coupled in addition to theresending destination Node and resending point-in-time T×Time. Thus,with the ring buffer 11 of the resending timer 1, as illustrated in FIG.7, the resending Node information for each resending destination isstored for each storage region of the address Addr, so the storagecapacity can be reduced as compared with the case of storing theresending Node information in the address Addr for each packet.

Also, the sending destination selecting unit 102 can perform morecomplex sending selection using the number of resending packets andresending packet size to be added to the resending Node information.Specifically, with the sending destination selecting unit 102, in theevent that the number of resending packets and resending packet size aregreat, the most appropriate sending selection is realized based on theresending Node information such as increasing the possibility that thesending destination thereof will be selected or the like, wherebyimprovement in sending efficiency can be realized.

Third Embodiment

Description will be made below regarding resending processing performedby the resending timer 1 in response to an ACK signal.

The resending timer 1, as described above, eliminates the resending Nodeinformation unnecessary for resending in response to an ACK signal fromthe ring buffer 11. On the other hand, the resending timer 1 accordingto the present embodiment causes the writing unit 12 to update theresending Node information in response to an ACK signal, therebypreventing resending processing as to the resending Node informationunnecessary for resending from being performed. Accordingly, descriptionwill be made below in detail regarding the update processing of theresending Node information corresponding to an ACK signal with referenceto FIG. 8.

With the initial stage, upon the communication device receiving an ACKsignal, the information based on this ACK signal is supplied to theresending timer 1. Specifically, the information based on an ACK signalis made up of the number of received packets whose sending has beennormally completed, and the received packet size thereof.

In step S11, the resending timer 1 searches the resending destination ofthe resending Node information corresponding to the supplied ACKinformation from the storage region of the ring buffer 11, and reads outthe resending Node information stored in the storage region thereof. Forexample, upon an ACK signal being replied from the terminal C, theresending timer 1 specifies the address number 2 from the storage regionof the ring buffer 11, and reads out the resending Node information fromthis storage region.

In step S12, the resending timer 1 subtracts the number of receivedpackets and received packet size wherein reception has been normallycompleted from the ACK signal from the number of resending packets andresending packet size of the resending Node information respectively.For example, let us say that with the resending Node information of theterminal C serving as a resending destination, the number of resendingpackets is 3, and the resending packet size is 300. Subsequently, in theevent that the number of received packets of ACK information is 1, andthe received packet size is 100, according to the processing process,the number of resending packets of the resending Node information ismodified to 2, and the resending packet sized is modified to 200.

In step S13, the resending timer 1 causes the writing unit 12 to writethe new resending Node information modified at the storage region of thereadout address Addr. For example, in the event that the readout addressAddr number is 2, the writing unit 12 writes the new resending Nodeinformation in the storage region of the address Addr number 2, and endsthe present processing.

Thus, the resending timer 1 modifies the number of packets and packetsize thereof that are received in response to an ACK signal. Also, thewriting unit 12 performs wiring processing of the resending Nodeinformation sequentially supplied from the sending signal generatingunit 104 while incrementing the address Addr number specified by thewriting pointer in accordance with the processing process illustrated inFIG. 3 regardless of the present update processing.

On the other hand, the reading unit 13, in addition to the above readoutprocessing, further performs processing illustrated in FIG. 9.

In step S21, the reading unit 13 reads out resending Node informationfrom the storage region of the address Addr specified by the readoutpointer, and determines regarding whether or not the number of resendingpackets of this resending Node information is zero. Here, in the eventof the reading unit 13 determining that the number of resending packetsis zero, the flow proceeds to step S23, and in the event of determiningthat the number of resending packets is not zero, the flow proceeds tostep S22.

In step S22, the reading unit 13 supplies the readout resending Nodeinformation to the comparing unit 15. Here, the comparing unit 15performs the above comparison processing, and subsequently supplies aresending start request to the sending destination selecting unit 102.

In step S23, the reading unit 13 performs the modification processing ofthe readout pointer in accordance with the steps S1 trough S3illustrated in FIG. 3.

As described above, the reading unit 13, in the event that the number ofresending packets of the resending Node information modified inaccordance with an ACK signal is zero, increments the address Addrnumber specified by the readout pointer without supplying this resendingNode information to the comparing unit 15. That is to say, the resendingtimer 1 prevents the sending destination selecting unit 102 fromstarting of the unnecessary resending processing as to a resendingdestination whose number of resending packets is zero.

Incidentally, in the conventional sending control circuit included in acommunication device, the resending Node information is eliminated atthe point of receiving the ACK signal, and the subsequent records of theinformation are packed from the front. However, the amount of theprocessing increases when using the conventional method.

On the other hand, with the resending timer 1 for performing the readoutprocessing illustrated in FIG. 9, there is no need to perform theelimination and movement processing of the resending Node informationfrom the storage region, so the processing amount can be reduced.Particularly, in the event of realizing this resending timer 1 usinghardware, the circuit scale and power consumption can be reduced inaccordance with the reduction in the processing amount.

Note that the present invention is not restricted to the aboveembodiments, and it is needless to say that various types ofmodifications can be made without departing from the spirit and scope ofthis invention. It should be understood by those skilled in the art thatvarious modifications, combinations, sub-combinations and alterationsmay occur depending on design requirements and other factors insofar asthey are within the scope of the appended claims or the equivalentsthereof.

1. A resending control circuit for controlling resending of data to besent to a sending destination, said resending control circuitcomprising: a writing unit for writing resending information generatedcorresponding to each of data to be resent and including the resendingpoint-in-time of the data in memory; a reading unit for reading out saidresending information from said memory; and a control unit for comparingresending point-in-time included in the oldest resending information ofresending information stored in said memory with current point-in-time,and executing resending processing of data corresponding to theresending information according to the comparison result.
 2. Theresending control circuit according to claim 1, wherein said memory isconfigured as a ring buffer; and wherein said writing unit writes saidresending information while sequentially incrementing a writing pointerindicating an address on said ring buffer at the time of writing saidresending information; and wherein said reading unit reads out resendinginformation from the storage region corresponding to the addressindicated by a readout pointer on said ring buffer to supply this tosaid control unit; and wherein upon said control unit determining thatthe current point-in-time has passed the resending point-in-timeincluded in the resending information supplied from said reading unit,said control unit executes the resending processing of the datacorresponding to the resending information according to the comparisonresult, and also controls said reading unit to increment the addressnumber indicated by said readout pointer.
 3. The resending controlcircuit according to claim 2, wherein said resending information is madeup of the number of resending packets and the resending packet sizethereof of said data to be resent in addition to said resendingpoint-in-time; and wherein said control unit supplies said number ofresending packets and the packet size thereof to a predetermined sendingdestination selecting circuit, and controls said sending destinationselecting circuit to select said sending destination based on the numberof said resending packets and resending packet size.
 4. The resendingcontrol circuit according to claim 3, wherein said writing unit modifiesthe number of said resending packets included in said resendinginformation stored in said ring buffer in accordance with an ACK signalreceived by predetermined receiving means; and wherein said reading unitdetermines regarding whether or not the number of said resending packetsof the resending information read out from the storage region of theaddress specified by said readout pointer is zero, and in the event ofdetermining that the number of said resending packets is zero, saidreading unit increments the address number specified by said readoutpointer without supplying the resending information to said controlunit, and in the event of determining that the number of said sendingpackets is not zero, said reading unit supplies the resendinginformation to said control unit, and increments the address numberspecified by said readout pointer.
 5. A sending device including aresending control circuit for controlling resending of data to be sentto a sending destination, said resending control circuit comprising: awriting unit for writing resending information generated correspondingto each of data to be resent and including the resending point-in-timeof the data in memory; a reading unit for reading out said resendinginformation from said memory; and a control unit for comparing resendingpoint-in-time included in the oldest resending information of resendinginformation stored in said memory with current point-in-time, andexecuting resending processing of data corresponding to the resendinginformation according to the comparison result.
 6. A resending controlmethod of a control circuit for controlling resending of data to be sentto a sending destination, comprising the steps of: writing resendinginformation generated corresponding to each of data to be resentincluding the resending point-in-time of the data in memory; comparingresending point-in-time included in the oldest resending information ofresending information stored in said memory with current point-in-time;and executing resending processing of data corresponding to theresending information according to the comparison result.
 7. A resendingcontrol program executed by a resending control circuit for controllingresending of data to be sent to a sending destination, comprising thesteps of: writing resending information generated corresponding to eachof data to be resent including the resending point-in-time of the datain memory; comparing resending point-in-time included in the oldestresending information of resending information stored in said memorywith current point-in-time; and executing resending processing of datacorresponding to the resending information according to the comparisonresult.